home *** CD-ROM | disk | FTP | other *** search
- ;;; -*- Mode: Lisp; Package: Maxima; Syntax: Common-Lisp; Base: 10 -*- ;;;;
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;; The data in this file contains enhancments. ;;;;;
- ;;; ;;;;;
- ;;; Copyright (c) 1984,1987 by William Schelter,University of Texas ;;;;;
- ;;; All rights reserved ;;;;;
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;; (c) Copyright 1980 Massachusetts Institute of Technology ;;;
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
- (in-package "MAXIMA")
- (macsyma-module tlimit)
- (load-macsyma-macros rzmac)
-
- ;; TOP LEVEL FUNCTION(S): $TLIMIT $TLDEFINT
-
- (DECLARE-TOP(GENPREFIX TL)
- (*LEXPR $LIMIT)
- (SPECIAL $TLIMSWITCH TAYLORED EXP VAR VAL LL UL
- SILENT-TAYLOR-FLAG))
-
- #-NIL
- (DEFMFUN $TLIMIT NARGS
- ((LAMBDA ($TLIMSWITCH) (APPLY '$LIMIT (LISTIFY NARGS))) T))
- #+NIL
- (defmfun $tlimit (&restv argvec)
- (let (($tlimswitch t)) (apply #'$limit argvec)))
-
-
- (DEFMFUN $TLDEFINT (EXP VAR LL UL)
- ((LAMBDA ($TLIMSWITCH) ($LDEFINT EXP VAR LL UL)) T))
-
- (DEFUN TLIMP (EXP) ; TO BE EXPANDED TO BE SMARTER (MAYBE)
- T)
-
- (DEFUN TAYLIM (E *I*)
- (PROG (EX)
- (SETQ EX (CATCH 'TAYLOR-CATCH
- (let ((SILENT-TAYLOR-FLAG t))
- ($TAYLOR E VAR (RIDOFAB VAL) 1.))))
- (OR EX (RETURN (COND ((EQ *I* T) (LIMIT1 E VAR VAL))
- ((EQ *I* 'THINK) (COND ((MEMQ (CAAR EXP)
- '(MTIMES MEXPT))
- (LIMIT1 E VAR VAL))
- (T (SIMPLIMIT E VAR VAL))))
- (T (SIMPLIMIT E VAR VAL)))))
- (RETURN
- (let ((TAYLORED t))
- (LIMIT
- (SIMPLIFY
- ($logcontract ($RATDISREP ex)))
- ;;(COND ((EQ (CADR EX) 'PS)
- ;; (CONS (CAR EX)
- ;; (LIST 'PS (THIRD EX) (FOURTH EX)
- ;; (FIFTH EX))))
- ;; (t (EX)))
- VAR
- VAL
- 'THINK)))))
-
- #-NIL
- (DECLARE-TOP(UNSPECIAL TAYLORED EXP VAR VAL LL UL))
-
-